The present invention relates generally to methods and apparatus for performing a mass operation on a plurality of managed devices on a network, and more particularly to a system and method in which the same operation, such as a particular system configuration operation can be performed on a plurality of managed devices from a single request.
Network computing systems typically require a variety of devices to construct and maintain a working storage system. In addition, companies with large networks typically have a number of different storage systems, many of which can be manufactured by different companies and/or run on different versions of operating software. Storage system devices may include, but are not limited to, host adapters, I/O chips, disk enclosures, and bridge controllers, to name a few.
With these xe2x80x9cheterogeneousxe2x80x9d storage systems there exists several management and configuration tasks that must be repeatedly executed across some subset of the managed devices. These tasks are often tedious and potentially error prone due to repeated user interaction. Thus, these tasks are excellent targets for automation; that is, the ability to execute the plurality of tasks with a single command request.
Mass operations are special management commands which can be performed by management software to a specified subset of managed devices in a given domain. A prose example of a mass operation may be xe2x80x9cmanaged device A and managed device B please make a volume of size 2 GB at protection level 5 on yourselves.xe2x80x9d By instructing a series of machines to conduct a given task in parallel, the time required to administer an enterprise can be greatly reduced.
Unfortunately, mass operations present several problems when attempting to execute them in an enterprise management paradigm. In particular, the addition of mass operations to management software may cause stability problems with the software. In addition, it is difficult to submit mass operation task requests to devices manufactured by different companies or running different versions of controller management software because they all require different management and configuration commands. Finally, when issuing, for example, storage system configuration requests to a plurality of storage systems on a network, it is difficult to determine whether each of the storage systems to which the configuration request is sent is adapted, either physically, logically, or both, to implement the configuration request. Thus, what is needed is a system which can process mass operations with a plurality of managed devices which may be manufactured by different companies or may running different versions of controller management software, and a system which can perform the proper error checking to ensure that the managed devices can implement the mass operation request.
According to the invention, a method of configuring a plurality of managed devices. The method preferably includes selecting a source managed device, obtaining a source configuration description from the source managed device, selecting one or more destination managed devices to be configured, issuing a configuration change command to each of the selected destination managed devices and applying the source configuration description selected from the source managed device to each of the selected destination managed devices.
In accordance one particular embodiment of the present invention, the method may include the step of editing the source configuration description before issuing the configuration change commands to the one or more destination managed devices.
In accordance with yet another embodiment of the present invention, the method may further include an error checking routine which includes the step of determining whether the source configuration description can be applied to each of the one or more destination managed devices. In accordance with one aspect of the error checking routine, the method includes checking the destination managed devices"" hardware configuration to determine whether the hardware configuration meets the hardware configuration constraints of the source configuration description. In addition, the error checking routine may include checking the destination managed devices"" software to determine if the software can apply the source configuration description to the destination managed device.
In accordance with still another embodiment of the present invention, the step of selecting a source managed device further includes the step of invoking in the management station, a source device management application associated with the source managed device. The source device management application is for monitoring and managing the source managed device. Preferably, the management station utilizes the source device management application to obtain the source configuration description from the source managed device.
In addition, the step of selecting one or more destination managed devices further includes the step of invoking a destination device management application in the management station for each of the one or more destination managed devices. Each of the destination device management applications preferably are associated with at least one of the one or more destination managed devices. Also, the destination device management applications are for monitoring and managing the at least one of the one or more destination managed devices with which each of the destination device management applications are associated. Preferably, each of the destination device management applications are used to issue the configuration change commands to at least one of said one or more destination managed devices with which each of the destination device management applications are associated.
In accordance with another embodiment of the present invention, each of the one or more destination managed devices preferably include a controller, which is adapted to apply the source configuration description in the destination managed devices. Once the controller has finished the configuration update, it preferably informs the destination device management application associated with the destination managed device that the configuration change request has been processed.
In accordance with yet another embodiment of the present invention, the management station, by running one of the destination device management applications, is adapted to display a configuration and status of the destination managed device with which the destination device management application is associated. Thus, when the controller informs the destination device management application that the configuration change request was processed, the controller also informs the device management application of the new configuration and status of the destination managed device. Accordingly, the destination device management application causes the new configuration and status of the destination managed device to be displayed on the management station.
A more complete understanding of the present invention may be derived by referring to the detailed description of preferred embodiments and claims when considered in connection with the figures, wherein like reference numbers refer to similar items throughout the figures.